package com.swak.ui;

import com.google.common.eventbus.CustomEventBus;
import com.google.common.eventbus.EventBus;
import com.swak.reactivex.threads.WorkerContext;

/**
 * 时间
 * 
 * @author lifeng
 * @date 2020年5月24日 下午7:44:41
 */
public enum Events {

	INSTANCE;

	static EventBus eventBus;

	/**
	 * 创建事件
	 * 
	 * @param eventbusContext
	 * @return
	 */
	public static EventBus New(WorkerContext eventbusContext) {
		eventBus = new CustomEventBus("UI.eventbus", eventbusContext);
		return eventBus;
	}

	/**
	 * 发送事件
	 * 
	 * @param event
	 */
	public static void post(Event event) {
		if (eventBus != null) {
			eventBus.post(event);
		}
	}

	/**
	 * 注册事件
	 * 
	 * @param o
	 */
	public static void register(Object o) {
		if (eventBus != null) {
			eventBus.register(o);
		}
	}

	/**
	 * 注册事件
	 * 
	 * @param o
	 */
	public static void unregister(Object o) {
		if (eventBus != null) {
			eventBus.unregister(o);
		}
	}
}
